<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<script>
//    var arr =[10,20,30];
//    var sum = 0;
//    for(var i = 0;i<arr.length;i++){
//        sum += arr[i];
//    }
//    console.log(sum);
//    var avg = sum/arr.length;
//    console.log(avg);



//    var arr = [10,20,30,-12,0];
//    var max = arr[0];
//    for(var i=1;i<arr.length;i++){
//        if(arr[i]>max){
//            max = arr[i];
//        }
//    }
//    alert(max);



//    var arr = [10,-20,30,40];
////定义一个最大值一个最小值
//    var maxValue = arr[0];
//    var minValue = arr[0];
//    var maxIndex = 0;
//    var minIndex = 0;
//
//    for(var i=1;i<arr.length;i++) {
//        //如果元素中的最大值大于我们定义的最大值
//        if(arr[i]>maxValue){
//            //把这个元素赋值给最大值maxValue，把他的索引值赋值给maxIndex
//            maxValue = arr[i];
//            maxIndex = i;
//        }
//        //如果数组中的元素小于我们定义的最小值
//        if(arr[i]<minValue){
//            //把这个元素赋值给最小值minValue，把他的索引值赋值给minIndex
//            minValue = arr[i];
//            minIndex = i;
//        }
//    }
//    console.log(maxValue);
//    console.log(maxIndex);
//    console.log(minValue);
//    console.log(minIndex);

//给数组中加|
//    var arr = ["吕布","赵云","典韦","关羽","马超","张飞"];
//    var str = arr[0];
//    var separator = "|";
//    for(var i=1;i<arr.length;i++) {
//        str += separator + arr[i];
//    }
//    console.log(str);

//去掉数组里面的0
//    var arr = [0,"刘备",0,"关羽",0,"张飞",0];
//    var newArr = [];
//    for(var i=0;i<arr.length;i++) {
//        if(arr[i] !== 0){
//            newArr[newArr.length] = arr[i];
//        }
//    }
//    console.log(newArr);


    //数组翻转
//思路一

    //方法一
//    var arr = ["刘备","关羽","张飞","诸葛亮","马超","黄忠","姜维"];
//    console.log(arr);
//    var newArr = [];
//    for(var i=0;i<arr.length;i++){
////        用新数组的长度作为索引值。   给定数组的最大索引值减去i，因为i自增，所以获取的将是最大索引值到最小索引值
//        newArr[newArr.length] =arr[arr.length-1-i];
//    }
//    console.log(newArr);

    //方法二：
//    var arr = ["刘备","关羽","张飞","诸葛亮","马超","黄忠","姜维"];
//    console.log(arr);
//    var newArr = [];
//    for(var i=arr.length-1;i>=0;i--){
//        newArr[newArr.length] =arr[i];
//    }
//    console.log(newArr);


    //思路二

//    var arr = ["刘备","关羽","张飞","诸葛亮","马超","黄忠","姜维"];
//    console.log(arr);
//    for(var i=0;i<arr.length/2;i++){
//        var temp = arr[i];
//        arr[i] = arr[arr.length-1-i];
//        arr[arr.length-1-i] = temp;
//    }
//    console.log(arr);




//    var arr = [10,90,20,70,30,50];
//
//    var temp;
//    for(var i=0; i<arr.length;i++) {
//        for(var j=0; j<i;j++) {
//            if(arr[i] > arr[j]) {
//                temp = arr[i];
//                arr[i] = arr[j];
//                arr[j] = temp;
//            }
//        }
//    }
//    console.log(arr);


//冒泡排序
//理论： 1.比较轮数n-1。    2.比较次数n-1。  3.符合某个条件交换位置。
//核心： 双重for循环
//步骤：
//1.双重for循环。
//2.制定轮次数和次数
//3.判断是否符合标准，如果符合标准交换位置。

    var arr = [9,8,5,4,2,1,0];
//    var temp;
    console.log(arr);
    var m = 0;
    var n = 0;
//          双重for循环
    for(var i=0;i<arr.length-1;i++){
        var bool = true;
//        制定轮数和次数
        for(var j=0;j<arr.length-1-i;j++) {
//            判断是否符合标准，如果符合标准交换位置
            if(arr[j]>arr[j+1]) {
                temp = arr[j];
                arr[j] = arr[j+1];
                arr[j+1] = temp;
                bool = false;
            }
            m++;
        }
        n++;
        if(bool){
            break;
        }
    }
    console.log(arr);
    console.log(m);
    console.log(n);
</script>
</body>
</html>












